package lanQiaoBei.数学知识.约数;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.*;

/*约数之和
给定 n 个正整数 ai，请你输出这些数的乘积的约数之和，答案对 109+7 取模。

输入格式

第一行包含整数 n。

接下来 n 行，每行包含一个整数 ai。

输出格式

输出一个整数，表示所给正整数的乘积的约数之和，答案需对 109+7 取模。

数据范围

1≤n≤100,
1≤ai≤2×1e9

输入样例：

3
2
6
8

输出样例：

252
————————————————
* */
public class P3 {
    static BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
    final static int N=110;
    static int res=1;
    static void scan()throws Exception{

    }
    public static void main(String[]args)throws Exception {
           int n=Integer.parseInt(br.readLine());
           Map<Integer,Integer>map=new HashMap();
           while(n-->0){
                 int x=Integer.parseInt(br.readLine());
                 for(int i=2;i<=x/i;i++){
                     if(x%i==0){
                         int s=0,v=map.getOrDefault(i,0);
                         while(x%i==0){
                             x/=i;
                             s++;
                         }
                         map.put(i,v+s);
                     }
                 }
                 if(x>1){
                     int v=map.getOrDefault(x,0);
                     map.put(x,v+1);
                 }
           }
           map.forEach((k,v)->{
               int s=1;
               while(v-->0){
                   s=s*k+1;
               }
               res=res*s%(int)1e7;
           });
           System.out.print(res);
    }
}
